﻿namespace AiFrame.InterfaceLib.Data.Patterns
{
    /// <summary>
    /// Represents a class which takes a property name and its content
    /// and returns a new, manupulated or calculated value.
    /// </summary>
    public interface IVirtualQuery
    {
        /// <summary>
        /// Queries a new value for a specific property.
        /// </summary>
        /// <param name="property">The name of the property.</param>
        /// <param name="content">The current content of the property.</param>
        /// <returns>The new value of the property.</returns>
        object QueryProperty(string property, object content);
    }
}
